/**************************************************************************************
 * Date 		By				Description
 * ------------------------------------------------------------------------------------
 * 03-20-07		Noah V			Created
 *
 **************************************************************************************/

using System.Web.Caching;

namespace NAFx.Base
{
    /// <summary>
    /// Result code for SmartObject's Load method
    /// Upon successful load, a smart object should normally return Normal, unless
    /// it wants to override the default cache level
    /// </summary>
    public enum LoadResult
    {
        /// <summary>
        /// Failed to load a smart object
        /// </summary>
        Failure = CacheItemPriority.Low - 2,

        /// <summary>
        /// Load successful, but the smart object should not be cached
        /// </summary>
        NoCache,

        /// <summary>
        /// Should be cached with a low priority
        /// </summary>
        Low,

        /// <summary>
        /// Should be cached with a priority lower than normal
        /// </summary>
        BelowNormal,

        /// <summary>
        /// Should be cached with a normal priority
        /// </summary>
        Normal,

        /// <summary>
        /// Should be cached with a priority higher than normal
        /// </summary>
        AboveNormal,

        /// <summary>
        /// Should be cached with a high priority
        /// </summary>
        High,

        /// <summary>
        /// Should never be removed from cache
        /// </summary>
        NotRemovable
    };
}
